package org.twndmv.dto;

import java.io.Serializable;
import java.util.ArrayList;
import java.util.List;

public class PersonDTO implements Serializable {
	
	/**
	 * 
	 */
	private static final long serialVersionUID = 1L;

	public PersonDTO() {
		residences = new ArrayList<ResidenceDTO>();
		registrations = new ArrayList<VehicleRegistrationDTO>();
	}
	
	public PersonDTO(long fakeID) {
		residences = new ArrayList<ResidenceDTO>();
		registrations = new ArrayList<VehicleRegistrationDTO>();
		id = fakeID;
	}
	
	private long id;
	private String firstName;
	private String middleName;
	private String lastName;
	private String nameSuffix;

	private ResidenceDTO currentResidence;
	
	private List<ResidenceDTO> residences;
	
	private PhysicalDetailsDTO physicalDetails;
	
	private List<VehicleRegistrationDTO> registrations;

	public String getFirstName() {
		return firstName;
	}

	public void setFirstName(String firstName) {
		this.firstName = firstName;
	}

	public String getMiddleName() {
		return middleName;
	}

	public void setMiddleName(String middleName) {
		this.middleName = middleName;
	}

	public String getLastName() {
		return lastName;
	}

	public void setLastName(String lastName) {
		this.lastName = lastName;
	}

	public String getNameSuffix() {
		return nameSuffix;
	}

	public void setNameSuffix(String nameSuffix) {
		this.nameSuffix = nameSuffix;
	}

	public ResidenceDTO getCurrentResidence() {
		return currentResidence;
	}

	public void setCurrentResidence(ResidenceDTO currentResidence) {
		this.currentResidence = currentResidence;
	}

	public List<ResidenceDTO> getResidences() {
		return residences;
	}

	public void setResidences(List<ResidenceDTO> residences) {
		this.residences = residences;
	}

	public PhysicalDetailsDTO getPhysicalDetails() {
		return physicalDetails;
	}

	public void setPhysicalDetails(PhysicalDetailsDTO physicalDetails) {
		this.physicalDetails = physicalDetails;
	}

	public List<VehicleRegistrationDTO> getRegistrations() {
		return registrations;
	}

	public void setRegistrations(List<VehicleRegistrationDTO> registrations) {
		this.registrations = registrations;
	}

	public long getId() {
		return id;
	}
	
	
	public String printName() {
		return "" + firstName + " " + middleName + " " + lastName;
	}

	
}
